<template>
<!-- 如果一个都没有就不显示了，这个v-show就是这个控制的 -->
  <div class="foot-box" v-show="total">
    <input type="checkbox" :checked="isAll" @change="checkAll" />
    <div class="box-span">
      <span>已完成{{ doneTotal }}/</span>
      <span>全部{{ total}}</span>
    </div>
    <button class="Btn" @click="clearAll">清除已完成任务</button>
  </div>
</template>

<script>
export default {
  name: "TodoInfoFoot",
  data() {
    return {
    };
  },
  props: ["todos",'checkAllTodo','clearAllTodo'],

  computed: {
    //统计全部
    total(){
    return this.todos.length
    },
    isAll(){
    return this.doneTotal ==this.total &&this.total>0
    },
      //计算已完成的事情
    doneTotal() {
      const x = this.todos.reduce((pre, todo) => {
        return pre + (todo.done ? 1 : 0);
      }, 0);
      return x;//计算属性必须要返回值
    },

    //第一种方法
    // doneTotal(){
    //   var num=0;
    //  this.todos.forEach(todoObj => {
    //   if(todoObj.done==true) num++
    //  });
    //   return num;
    // }
  },
  methods:{
    checkAll(e){
      this.checkAllTodo(e.target.checked)
    },
    clearAll(){
      if(confirm('你确定要删除吗？')){
      this.clearAllTodo()
      }
    }
  }
};
</script>

<style>
.foot-box {
  width: 500px;
  margin: 50px auto;
}
.box-span {
  display: inline;
  margin-left: 20px;
}
.box-span span {
  font-size: 14px;
  color: rgb(94, 95, 96);
}
.Btn {
  float: right;
  background-color: #e15d47;
  color: #fff;
  padding: 5px;
  border: none;
  border-radius: 4px;
}
.Btn:hover {
  cursor: pointer;
}
.Btn:active {
  color: #f2d7c4;
}
</style>
